iT邦幫忙

2023 iThome 鐵人賽

DAY 17
0

前面所說的 Asynchronous Features 通常我又稱 Batch Features,這類 Batch Features 的特點是:

  • 適合大量的、不需要實時反饋的數據處理
  • 通常在特定時間點或按預定計劃執行。
  • 資源使用通常更為高效。

這類 Feature 常用技術框架就是 Snowflake, Spark 和 Hadoop MapReduce,並透過 Airflow 來達到流程自動化與調度,當然如果能透過先前介紹的 dbt 來管理,更可以減少實驗與 Serving 的連接

Airflow

Apache Airflow 是一個廣泛使用的工作流程自動化和調度平台。在數據工程領域,Airflow 通常用於 ETL 任務,資料整合,以及批次處理,他有一下優點

  • 透過有像圖 (DAG) 管理任務,除了調度時間外提供很好的相依性管理
  • 豐富的 Extension
  • 完整的監控日誌

什麼樣的特徵是合作 Async Features

基本上能接受一天以上的延遲的特徵都可以做成 Features,當然如果透過 Apache Hudi (Hadoop Upserts Deletes and Incrementals) 而不是用原本的 Apache Hive 是可以達到小時級的延遲

事實上我覺得在製作特徵的時候,都應該去思考我的特徵是不是真的有這麼強的實時需求,如果沒有,我認為大多的特徵都應該更傾向於製作成 Async Feautre 而不是 Sync Feature,原因如下

  • 分散式計算更好地利用計算資源,Pipelien Stability 更好,也能更快的計算出來
  • Drift 可控制,訓練用的資料和測試的資料不太會有 discrepancy
  • 良好的 Pattern 下花費在儲存資源的開銷會更少
  • 較容易設計錯誤狀況處理流程

但有沒有可能所有的特徵我們都透過 Async 來處理呢?明天我們透過 Feature Store 來嘗試回答這個問題 ...


上一篇
Day 16 Realtime Join: Asynchronous Mindset
下一篇
Day 18 Feature Store
系列文
踏上 MLOps 之路:從 Applied Data Scientist 到 MLOps 的轉變與建構30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言